home *** CD-ROM | disk | FTP | other *** search
/ Aminet 28 / Aminet 28 (1998)(GTI - Schatztruhe)[!][Dec 1998].iso / Aminet / util / libs / graphics3d.lha / doc / graphics3d.notes < prev   
Encoding:
Text File  |  1998-04-19  |  4.4 KB  |  130 lines

  1. ******** ENGLISH  ****************************************
  2.  
  3.  -----  GENERAL NOTES OVER GRAPHICS3D.LIBRARY ------
  4.  
  5. (from the original documentation of Maciej R.Gorny)
  6.  
  7. 1)    3D coordinates system
  8.  
  9. Coordinate system used is a left-handed coordinate system: X-axis goes from left
  10. to right, Y-axis, from down up-wards, and Z-axis from behind (us) into the
  11. screen.
  12.  
  13.                ^ +Y
  14.                |        Into the screen
  15.                |
  16.                |      +Z
  17.                |     /
  18.                |    /
  19.                |   /
  20.                |  /
  21.                | /
  22.                |/
  23. -X ---------------------------> +X
  24.               /|
  25.              / |
  26.             /  |
  27.            /   |
  28.           /    |
  29.        -Z/     |
  30.                |
  31.  Viewer        | -Y
  32.  
  33.  
  34. 2)    Objects and polygons supported
  35.  
  36. The objects are group of polygons of two types:
  37. The first with three vertices (triangles) or with four vertices (quads) in clockwise order and with one or two side .
  38. The second with one(point) or two(lines) vertex, obiouvsly with this entitys
  39. the caratteristics of first type here are ignored.
  40. All other will be either rejected or will cause problems.
  41.  
  42. One-sided polygons will be visible only when they are facing a viewer. 
  43. This is useful if we want to limit number of polygons rendered to screen by 
  44. using backface culling and remove polygons that cannot be seen in an object.
  45. Objects cannot concave in such case.
  46.  
  47. Two-sided polygons will always be rendered to a screen (provided they get
  48. passed clipping procedures), because they have two sides that are visible to
  49. a viewer: front and back.
  50.  
  51.  
  52. 3)    Limits
  53.  
  54. In the space 3D defined with the function GD_display3D() you can insert a
  55. max of 100 objects (you can change recompiled with a new value for MAXOBJECT
  56. see graphics3d.h) and a max of 10000 polygons simultaneous visible on the
  57. actual view (you can change recompiled with a new value for MAXPLFRAM see
  58. graphics3d.h) than for any objects you can define a max of 1000 vertex (you
  59. can change recompiled with a new value for MAXVERT see graphics3d.h).
  60. I think that this value generally sufficent for all, but if you increase
  61. its warnig! because the memory usage is not too linear.
  62.  
  63.  
  64. ******** ITALIANO ****************************************
  65.  
  66.  -----  NOTE GENERALI SULLA GRAPHICS3D.LIBRARY -----
  67.  
  68. (tratto dalla documentazione originale di Maciej R.Gorny)
  69.  
  70. 1)    Sistema di coordinate nello spazio
  71.  
  72. Il sistema sistema di coordinate usate segue la regola della mano sinitra
  73. cioe' : l'asse X va da sinistra a destra , l'asse Y va dal basso in alto
  74. e l'asse Z entra nello schermo
  75.  
  76.                ^ +Y
  77.                |        Verso lo schermo
  78.                |
  79.                |      +Z
  80.                |     /
  81.                |    /
  82.                |   /
  83.                |  /
  84.                | /
  85.                |/
  86. -X ---------------------------> +X
  87.               /|
  88.              / |
  89.             /  |
  90.            /   |
  91.           /    |
  92.        -Z/     |
  93.                |
  94.  osservatore   | -Y
  95.  
  96.  
  97. 2)     Oggetti e poligoni supportati.    
  98.  
  99. Gli oggetti sono intesi come insiemi di poligoni di due tipi :
  100. Il primo con tre(triangoli) o quattro (quadrilateri)vertici in ordine orario
  101. e con una o due facce, non sono ammessi altri casi.
  102. Il secondo con uno (punto) o due (linee)vertici ovviamente con queste due
  103. entita' non hanno senso le caratteristiche associate ai poligoni del
  104. primo tipo qui del tutto ignorate. 
  105.  
  106. I poligoni con una faccia saranno visibili solo se saranno rivolti verso
  107. l'osservatore (ovvero con la faccia esterna all'oggetto).Questo e' utile
  108. per limitare il numero di poligoni visualizzati sullo schermo.
  109. L'oggetto in tal caso non deve essere aperto.
  110.  
  111. I poligoni con due facce saranno invece sempre visibili sullo schermo
  112. poiche' hanno due lati visibili all'osservatore : anteriore e posteriore.
  113.  
  114.  
  115. 3)    Limiti
  116.  
  117. Nello spazio 3d definito con la funzione GD_display3D() si possono inserire
  118. un massimo di 100 oggetti (si puo' variare ricompilando con un valore 
  119. diverso per MAXOBJECT vedi graphics3d.h) ed un massimo di 10000 poligoni
  120. contemporaneamente visibili nella vista attuale (si puo' variare ricompilando
  121. con un valore diverso per MAXPLFRAM vedi graphics3d.h) inoltre per ogni 
  122. oggetto si puo' definire un massimo di 1000 vertici (si puo' variare 
  123. ricompilando con un valore diverso per MAXVERT vedi graphics3d.h) .
  124. In ogni caso penso siano valori generalmente sufficenti e se li aumentate
  125. attenzione all'uso della memoria perche' aumentera in modo non troppo 
  126. lineare.
  127.  
  128.  
  129.  
  130.